package cn.etg.day07;

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.Socket;
import java.util.Scanner;

/**
 * 将聊天室客户端今天写的内容独立完成一次，
 * 完成后，修改代码，使聊天室可以实现用户
 * 随意在控制台输入内容并发送给服务端。
 * 
 * 在构造方法中初始化Socket时，服务端的地址与端口通过读取当前包中的config.txt
 * 文件的两行内容得到，并依读取到的值初始化Socket。
 * @author Xiloer
 *
 */
public class Client {
    Socket socket;

    public Client() {
        try {
            System.out.println("客户端启动中……");
            socket = new Socket("localhost", 8080);
            System.out.println("客户端启动成功");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public void start() {
        Scanner scanner = new Scanner(System.in);
        OutputStream out = null;
        PrintWriter pw = null;

        try {
            out = socket.getOutputStream();
            pw = new PrintWriter(out, true);

            String str;
            while (!(str = scanner.next()).equals("exit")) {
                pw.println(str);
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            pw.close();
        }
    }

    public static void main(String[] args) {
        Client client = new Client();
        client.start();
    }
}
